/*
					ORDENACAO DE VETOR UTILIZANDO SOCKETS EM C
 =======================================================================================
 Nome        : Operacoes.c
 Autores     : Eduardo Aramizu, Matheus Zoccoler
 Disciplina  : SSC0640 – Sistemas Computacionais Distribuídos (Engenharia de Computacao)
 Descricao   : Nesse programa definimos o corpo das operacoes basicas de manipulacao de 
				vetores utilizadas no problema.				
 ========================================================================================
 */
#ifndef OPERACOES_H_INCLUDED
#define OPERACOES_H_INCLUDED

#ifndef ALL_H_INCLUDED
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>   // Definicao de tipos
#include <sys/socket.h>  // Biblioteca de estrutara de sockets
#include <netinet/in.h>  // Define os padroes de protocolo IP
#include <arpa/inet.h>   // Converte enderecos hosts
#include <string.h>
#include <unistd.h> // Define constantes POSIX
#include <errno.h>  // Utilizado para capturar mensagens de erro
#include <netdb.h>
#define ALL_H_INCLUDED
#endif

#include <time.h>	// Permite gerar um seed aleatorio com base no relogio do computador

#define MAX 10000

//Funcao para gerar um vetor aleatorio de inteiros. O vetor a[] ja deve estar alocado e 
//seu tamanho deve ser informado na variavel tam.
void randomVector(int a[], int tam);

//Funcao para ordenar um vetor de inteiros utilizando o algoritmo QuickSort. Deve ser
//informado a referencia para o vetor e seu tamanho.
void quickSort(int a[], int tam);

#endif // OPERACOES_H_INCLUDED
